package com.yc.cloud.openai.service;


import com.yc.cloud.openai.dto.NLPResultDTO;
import com.yc.cloud.openai.dto.NlpChunkResultDto;
import com.yc.cloud.openai.request.NLPParam;
import org.springframework.http.codec.ServerSentEvent;
import org.springframework.web.servlet.mvc.method.annotation.SseEmitter;
import reactor.core.publisher.Flux;

import java.util.Map;

public interface NLPService {


    /**
     * 获取语言理解结果
     *
     * @param param 各种动态配置参数
     * @return 语言理解结果信息
     */
    NLPResultDTO getNLPResult(NLPParam param);


    Flux<String> getNLPResultByStream(NLPParam param);

    Flux<ServerSentEvent<String>> getNLPResultByStream2(NLPParam param);

    SseEmitter getNLPResultByStream3(NLPParam nlpParam);
}
